package observer;

// 4. 测试类（模拟系统运行）
public class SmartAgricultureSystemDemo {
    public static void main(String[] args) {
        // 创建被观察者（环境信息模块）
        EnvironmentDataObservable environmentModule = new EnvironmentDataObservable();

        // 创建具体观察者（农机设备）
        AgriculturalMachineObserver seeder1 = new SeederMachine("播种机-001");
        AgriculturalMachineObserver harvester1 = new HarvesterMachine("收割机-002");

        // 注册观察者到环境模块
        environmentModule.addObserver(seeder1);
        environmentModule.addObserver(harvester1);

        // 模拟传感器采集到环境变化（更新环境信息）
        String newData = "土壤湿度=60%, 温度=25℃, 天气=晴, 作物生长阶段=幼苗期";
        environmentModule.updateEnvironmentInfo(newData);

        // 模拟移除某台农机
         environmentModule.removeObserver(seeder1);//移除1
         environmentModule.updateEnvironmentInfo("新环境数据...");
    }
}